![]() |
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
To access the contents, click the chapter and section titles.
Oracle Performance Tuning and Optimization
RDBMS FunctionalityChapter 1 reviewed the Oracle architecture. It looked at some of the functions the architecture provides for. In this chapter, I want to take some of these concepts a bit further and explain why they are needed and what they do. Each of these concepts is crucial to the function of the whole RDBMS system. Each has its own unique characteristics and functionality that you can take advantage of in designing an optimal system. If the RDBMS is to operate, you must provide for certain functions. Among these are data integrity, recovery from failure, error handling, and so on. The following sections list and describe some of these functions. CheckpointOracle uses either the CKPT background process or the LGWR process to signal a checkpoint. But what is a checkpoint and why is it necessary? Because all modifications done to data blocks are done on the block buffers, there are changes to data in memory that are not necessarily reflected in the blocks on disk. Because caching is done using a least recently used algorithm, if a buffer is constantly modified, it is always marked as recently used and is therefore unlikely to be written out by the DBWR. A checkpoint is used to ensure that these buffers are written to disk by forcing all dirty buffers to be written out on a regular basis. This does not mean that all work stops during a checkpoint; the checkpoint process has two methods of operation: the fast checkpoint and the normal checkpoint. In the normal checkpoint, the DBWR merely writes out a few more buffers every time it is active. This type of checkpoint takes much longer but has less of an effect on the system. In the fast checkpoint, the DBWR writes a large number of buffers at the request of the checkpoint each time it is active. This type of checkpoint completes much quicker and is more efficient in terms of I/Os generated, but it has a greater effect on system performance at the time of the checkpoint. You can use the time between checkpoints to improve instance recovery. Frequent checkpoints reduce the time required to recover in the event of a system failure. A checkpoint automatically occurs at a log switch. Logging and ArchivingThe redo log records all changes made to the Oracle database. The purpose of the redo log is to ensure that, in the event of the loss of a data file caused by some sort of system failure, the database can be recovered. By restoring the data files back to a known good state from backups, the redo log files (including the archive log files) can replay all the transactions to the restored data file, thus recovering the database to the point of failure. When a redo log file is filled in normal operation, a log switch occurs and the LGWR process starts writing to a different redo log file. When this switch occurs, the ARCH process copies the filled redo log file to an archive log file. When this archive is complete, the redo log file is marked as available. It is critical that this archive log file be safely stored because it may be needed for recovery. Later chapters revisit the concept of the redo log files and the archive log processes in terms of optimizing the log performance.
Business ModelsIn Part III of this book, Configuring the System, you configure for various business models. That part of the book looks at OLTP, batch processing, decision support, data warehousing, and BLOBs. OLTP and batch processing are perhaps the most common ways RDBMS products are used today, but decision support systems are growing rapidly. The following sections describe each of these systems. OnLine Transaction Processing (OLTP)OLTP is perhaps the most familiar type of information processing. OLTP stands for OnLine Transaction Processing and is just that: OLTP describes the business model of order entry, sales, data retrieval, and so on in an online fashion. In other words, OLTP describes anyone who is processing transactions in an interactive manner. Typical attributes include a high number of users accessing data in a concurrent manner with a strict response time criteria and no tolerance for downtime. Batch ProcessingBatch processing is information processing done offline. These applications usually involve heavy load activity and long processing times. An example is the processing of all orders taken during the day. The attributes of batch processing include strict criteria for load time and long processing times. Decision SupportDecision support activities involve extremely large queries over large amounts of data for the purpose of making an informed business decision. The reduction in cost of disk storage and improvements in CPU speeds has caused decision support systems to grow in popularity. Attributes of decision support systems include large queries over large amounts of data. Decision support applications are now taking advantage of GUIs to enhance the interpretation of the output data. Data WarehousingThe data warehouse system is a large database that holds information integrated from the organizations operational databases. The concept of the data warehouse is new and gaining in popularity as a way of pulling together all the information in the organization. In some respects, you can think of data warehousing as the integration of OLTP and decision support systems for the entire organization. Attributes of the data warehousing system include enormous amounts of data with both online and decision support functions. Binary Large Objects (BLOBs)BLOBs have become more popular with the emergence of client/server systems. A BLOB is simply a large binary object stored in the database. A BLOB can be an image, audio file, or a full-length movie. As you see in Part III of this book, Configuring the System, there are ways to improve performance in the system that is storing BLOBs. Attributes of BLOB systems include large amounts of data and (in some cases) the requirement of a continuous data stream.
|
![]() |
Products | Contact Us | About Us | Privacy | Ad Info | Home
Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. |